{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0.         0.36363636 0.72727273 1.09090909 1.45454545 1.81818182\n",
      " 2.18181818 2.54545455 2.90909091 3.27272727 3.63636364 4.        ] [-0.65364362 -0.61966189 -0.51077021 -0.31047698 -0.00715476  0.37976236\n",
      "  0.76715099  0.99239518  0.85886263  0.27994201 -0.52586509 -0.99582185]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy import interpolate\n",
    "import matplotlib.pyplot as plt\n",
    "x = np.linspace(0,4,12)\n",
    "y = np.cos(x**2/3+4)\n",
    "print(x,y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x,y,\"o\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "f1 = interpolate.interp1d(x,y, kind=\"linear\")\n",
    "f2 = interpolate.interp1d(x,y, kind=\"cubic\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "xnew = np.linspace(0,4,30)\n",
    "plt.plot(x,y,\"o\",xnew,f1(xnew),\"-\",xnew,f2(xnew),\"--\")\n",
    "plt.legend([\"data\",\"linear\",\"cubic\",\"nearest\"],loc=\"best\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "from scipy.interpolate import UnivariateSpline\n",
    "x = np.linspace(-3, 3, 50)\n",
    "y = np.exp(-x**2) + 0.1 * np.random.randn(50)\n",
    "plt.plot(x, y, 'bo', ms = 5)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spl = UnivariateSpline(x, y)\n",
    "xs = np.linspace(-3, 3, 1000)\n",
    "plt.plot(xs, spl(xs), 'g', lw = 3)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spl.set_smoothing_factor(0.5)\n",
    "plt.plot(xs, spl(xs), 'r', lw = 3)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
